﻿using Magicodes.ExporterAndImporter.Core;
using Magicodes.ExporterAndImporter.Excel;
namespace EMC.VISITOR.Core;

    /// <summary>
    /// 队列订阅输出参数
    /// </summary>
    public class SysMqSubscriberDto
    {
        /// <summary>
        /// Id
        /// </summary>
        public long Id { get; set; }
        
        /// <summary>
        /// Node
        /// </summary>
        public string? Node { get; set; }
        
        /// <summary>
        /// Connection
        /// </summary>
        public string? Connection { get; set; }
        
        /// <summary>
        /// VirtualHost
        /// </summary>
        public string? VirtualHost { get; set; }
        
        /// <summary>
        /// 唯一标识
        /// </summary>
        public string? ASoleId { get; set; }
        
        /// <summary>
        /// Rabbit账号
        /// </summary>
        public string? User { get; set; }
        
        /// <summary>
        /// Channel
        /// </summary>
        public string? Channel { get; set; }
        
        /// <summary>
        /// Exchange
        /// </summary>
        public string? Exchange { get; set; }
        
        /// <summary>
        /// 发布者
        /// </summary>
        public string? RoutingKeys { get; set; }
        
        /// <summary>
        /// RoutedQueues
        /// </summary>
        public string? RoutedQueues { get; set; }
        
        /// <summary>
        /// Properties
        /// </summary>
        public string? Properties { get; set; }
        
        /// <summary>
        /// 消息体
        /// </summary>
        public string? Payload { get; set; }
        
        /// <summary>
        /// 订阅结果
        /// </summary>
        public bool? HandlerResult { get; set; }
        
        /// <summary>
        /// 错误信息
        /// </summary>
        public string? ExceptionMessage { get; set; }
        
    }

    
  /// <summary>
    /// 队列订阅导出导入
    /// </summary>
    [ExcelExporter(Name = "队列订阅", TableStyle = OfficeOpenXml.Table.TableStyles.None, AutoFitAllColumn = true,AutoCenter =true)]
    [ExcelImporter( IsLabelingError = true,SheetName ="队列订阅")]
    public class ExportImportSysMqSubscriberDto
    {
        /// <summary>
        /// Node
        /// </summary>
        [ExporterHeader(DisplayName = "Node", IsBold = true)]
        [ImporterHeader(Name = "Node")]
        public string? Node { get; set; }
        
        /// <summary>
        /// Connection
        /// </summary>
        [ExporterHeader(DisplayName = "Connection", IsBold = true)]
        [ImporterHeader(Name = "Connection")]
        public string? Connection { get; set; }
        
        /// <summary>
        /// VirtualHost
        /// </summary>
        [ExporterHeader(DisplayName = "VirtualHost", IsBold = true)]
        [ImporterHeader(Name = "VirtualHost")]
        public string? VirtualHost { get; set; }
        
        /// <summary>
        /// 唯一标识
        /// </summary>
        [ExporterHeader(DisplayName = "唯一标识", IsBold = true)]
        [ImporterHeader(Name = "唯一标识")]
        public string? ASoleId { get; set; }
        
        /// <summary>
        /// Rabbit账号
        /// </summary>
        [ExporterHeader(DisplayName = "Rabbit账号", IsBold = true)]
        [ImporterHeader(Name = "Rabbit账号")]
        public string? User { get; set; }
        
        /// <summary>
        /// Channel
        /// </summary>
        [ExporterHeader(DisplayName = "Channel", IsBold = true)]
        [ImporterHeader(Name = "Channel")]
        public string? Channel { get; set; }
        
        /// <summary>
        /// Exchange
        /// </summary>
        [ExporterHeader(DisplayName = "Exchange", IsBold = true)]
        [ImporterHeader(Name = "Exchange")]
        public string? Exchange { get; set; }
        
        /// <summary>
        /// 发布者
        /// </summary>
        [ExporterHeader(DisplayName = "发布者", IsBold = true)]
        [ImporterHeader(Name = "发布者")]
        public string? RoutingKeys { get; set; }
        
        /// <summary>
        /// RoutedQueues
        /// </summary>
        [ExporterHeader(DisplayName = "RoutedQueues", IsBold = true)]
        [ImporterHeader(Name = "RoutedQueues")]
        public string? RoutedQueues { get; set; }
        
        /// <summary>
        /// Properties
        /// </summary>
        [ExporterHeader(DisplayName = "Properties", IsBold = true)]
        [ImporterHeader(Name = "Properties")]
        public string? Properties { get; set; }
        
        /// <summary>
        /// 消息体
        /// </summary>
        [ExporterHeader(DisplayName = "消息体", IsBold = true)]
        [ImporterHeader(Name = "消息体")]
        public string? Payload { get; set; }
        
        /// <summary>
        /// 订阅结果
        /// </summary>
        [ExporterHeader(DisplayName = "订阅结果", IsBold = true)]
        [ImporterHeader(Name = "订阅结果")]
        public bool? HandlerResult { get; set; }
        
        /// <summary>
        /// 错误信息
        /// </summary>
        [ExporterHeader(DisplayName = "错误信息", IsBold = true)]
        [ImporterHeader(Name = "错误信息")]
        public string? ExceptionMessage { get; set; }
        
    }